{"componentChunkName":"component---src-templates-post-tsx","path":"/github-deploy.md/","result":{"data":{"markdownRemark":{"html":"<h2 id=\"github-pages\" style=\"position:relative;\"><a href=\"#github-pages\" aria-label=\"github pages permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>GitHub Pages</h2>\n<p>GitHub Pages는 GitHub Repository를 이용해 웹 사이트를 무료로 호스팅해주는 서비스입니다.</p>\n<ul>\n<li>사용자가 GitHub Repository에 자신의 웹 프로젝트 빌드 결과물을 업로드 하면 GitHub가 그 결과물을 호스팅해 줍니다.</li>\n</ul>\n<h3 id=\"1-로컬-저장소에-commit-하기\" style=\"position:relative;\"><a href=\"#1-%EB%A1%9C%EC%BB%AC-%EC%A0%80%EC%9E%A5%EC%86%8C%EC%97%90-commit-%ED%95%98%EA%B8%B0\" aria-label=\"1 로컬 저장소에 commit 하기 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>1. 로컬 저장소에 Commit 하기</h3>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ <span class=\"token function\">git</span> <span class=\"token function\">add</span> <span class=\"token builtin class-name\">.</span>\n$ <span class=\"token function\">git</span> commit -m <span class=\"token string\">\" Deploying to Github Pages\"</span></code></pre></div>\n<p>지금까지 프로젝트의 파일 및 폴더의 추가/변경 사항을 로컬 저장소에 기록합니다.</p>\n<h3 id=\"2-gihub에-repository-생성-원격-저장소-생성\" style=\"position:relative;\"><a href=\"#2-gihub%EC%97%90-repository-%EC%83%9D%EC%84%B1-%EC%9B%90%EA%B2%A9-%EC%A0%80%EC%9E%A5%EC%86%8C-%EC%83%9D%EC%84%B1\" aria-label=\"2 gihub에 repository 생성 원격 저장소 생성 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>2. GiHub에 Repository 생성 (원격 저장소 생성)</h3>\n<span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 590px; \">\n      <a class=\"gatsby-resp-image-link\" href=\"/static/0f3d5621ef50af7c1b84e091e5af88c7/a016c/repository.png\" style=\"display: block\" target=\"_blank\" rel=\"noopener\">\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 87.16216216216216%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAARCAYAAADdRIy+AAAACXBIWXMAAA7DAAAOwwHHb6hkAAACA0lEQVQ4y5VUy4rcMBCcbw7kth8QyCEfleteElgILCEkzPj9kixL1sOulGR72GXJZFa4kGSjcnd1tU4heAxDDyklxnHkWhADuq6DdQ7vGeu64uScR17UKKoWVd2haVqUZYW6biCEwDRpaG2us1ITzL7fMCVorhNhCCukZpTKYRgdlmVJH8Anrr33RPjH/BJhI1xXEvDgMSKJ8w6eUoQQ3p/ybC3OZYa2HyD3dLJzgbpooaUByBnCAsufhCXcJIvjFCMpRYNLXqJtWYxpwFPzjB/9LzyPf/Bb5VDUZ5CC84R5nmEMNdQK2lA/4shkL4pDwwJ0HSstJAYtkc0VclvjbApUtoPZSWI2xswk0iQfofSYiF8Rem6kUvywVc5Zj9VTS79e560IO0LE8gqO7y3dEvU/bZUM6e9Rq2VZqdXyFulwuIktQpa8bvvku+inlBKjjVodiOm6O02eIhxFi65tk2njQctoI5zd1vHd8sJaNwljmHam07VOkWxk7jrPjNjONqVzD1LKQo7sY4VRbRDs69jbA1sv9vdMwqOK/yWMJa+bBnlOi1QVsixPvRz3l0t21fHQ8DDwDQ1XqFFDDrxpepl01Ey9563TsXvi7SNVJPT3aRjLXcoWBbslG2pM1iQbCUogdhmMo53u1fAn2+vj9894ePqCD98+4Wv9uKWG9U2v3oO/co4vNXhfvikAAAAASUVORK5CYII=&apos;); background-size: cover; display: block;\"></span>\n  <img class=\"gatsby-resp-image-image\" alt=\"github_repository\" title=\"github_repository\" src=\"/static/0f3d5621ef50af7c1b84e091e5af88c7/fcda8/repository.png\" srcset=\"/static/0f3d5621ef50af7c1b84e091e5af88c7/12f09/repository.png 148w,\n/static/0f3d5621ef50af7c1b84e091e5af88c7/e4a3f/repository.png 295w,\n/static/0f3d5621ef50af7c1b84e091e5af88c7/fcda8/repository.png 590w,\n/static/0f3d5621ef50af7c1b84e091e5af88c7/a016c/repository.png 762w\" sizes=\"(max-width: 590px) 100vw, 590px\" style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\" loading=\"lazy\">\n  </a>\n    </span>\n<p>자신의 GitHub에 새로운 repository를 생성합니다</p>\n<h3 id=\"3-로컬-저장소와-원격-저장소-연결\" style=\"position:relative;\"><a href=\"#3-%EB%A1%9C%EC%BB%AC-%EC%A0%80%EC%9E%A5%EC%86%8C%EC%99%80-%EC%9B%90%EA%B2%A9-%EC%A0%80%EC%9E%A5%EC%86%8C-%EC%97%B0%EA%B2%B0\" aria-label=\"3 로컬 저장소와 원격 저장소 연결 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>3. 로컬 저장소와 원격 저장소 연결</h3>\n<p>원격 저장소의 주소를 입력해 로컬 저장소와 원격 저장소를 연결해 줍니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ <span class=\"token function\">git</span> remote <span class=\"token function\">add</span> origin https://github.com/daeun012/deploy_test.git</code></pre></div>\n<p>로컬 저장소에 기록 한 내용을 원격 저장소에 업로드 합니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ <span class=\"token function\">git</span> push -u origin master</code></pre></div>\n<h3 id=\"4-gh-pages-패키지-설치\" style=\"position:relative;\"><a href=\"#4-gh-pages-%ED%8C%A8%ED%82%A4%EC%A7%80-%EC%84%A4%EC%B9%98\" aria-label=\"4 gh pages 패키지 설치 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>4. gh-pages 패키지 설치</h3>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ <span class=\"token function\">npm</span> <span class=\"token function\">install</span> gh-pages</code></pre></div>\n<h3 id=\"5-packagejson-수정\" style=\"position:relative;\"><a href=\"#5-packagejson-%EC%88%98%EC%A0%95\" aria-label=\"5 packagejson 수정 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>5. package.json 수정</h3>\n<p>package.json 파일에 <code class=\"language-text\">&quot;homepage&quot;: &quot;https://{GitHub username}.github.io/{Repository name}/&quot;</code>을 추가해 주고,</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\">....\n<span class=\"token property\">\"browserslist\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n<span class=\"token property\">\"production\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n<span class=\"token string\">\">0.2%\"</span><span class=\"token punctuation\">,</span>\n<span class=\"token string\">\"not dead\"</span><span class=\"token punctuation\">,</span>\n<span class=\"token string\">\"not op_mini all\"</span>\n<span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span>\n<span class=\"token property\">\"development\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n<span class=\"token string\">\"last 1 chrome version\"</span><span class=\"token punctuation\">,</span>\n<span class=\"token string\">\"last 1 firefox version\"</span><span class=\"token punctuation\">,</span>\n<span class=\"token string\">\"last 1 safari version\"</span>\n<span class=\"token punctuation\">]</span>\n\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n<span class=\"token property\">\"homepage\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"https://daeun012.github.io/deploy_test/\"</span> <span class=\"token comment\">//(*)</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p><code class=\"language-text\">package.json</code>의 <code class=\"language-text\">&quot;scripts&quot;</code> 부분에 <code class=\"language-text\">&quot;deploy&quot;: &quot;gh-pages -d build&quot;, &quot;predeploy&quot;: &quot;npm run build&quot;</code>를 추가해 줍니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\">...\n<span class=\"token property\">\"scripts\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n<span class=\"token property\">\"start\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"react-scripts start\"</span><span class=\"token punctuation\">,</span>\n<span class=\"token property\">\"build\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"react-scripts build\"</span><span class=\"token punctuation\">,</span>\n<span class=\"token property\">\"test\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"react-scripts test\"</span><span class=\"token punctuation\">,</span>\n<span class=\"token property\">\"eject\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"react-scripts eject\"</span><span class=\"token punctuation\">,</span>\n<span class=\"token property\">\"deploy\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"gh-pages -d build\"</span><span class=\"token punctuation\">,</span> <span class=\"token comment\">//(*)</span>\n<span class=\"token property\">\"predeploy\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"npm run build\"</span> <span class=\"token comment\">//(*)</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n...</code></pre></div>\n<ul>\n<li><code class=\"language-text\">npm run build</code> : 현재 프로젝트 코드를 빌드합니다.</li>\n<li><code class=\"language-text\">gh-pages -d build</code> : build 디렉토리 (-d)에 있는 파일을 GitHub Pages에 업로드 합니다.</li>\n</ul>\n<h3 id=\"마지막-github-pages에-빌드-결과물-업로드\" style=\"position:relative;\"><a href=\"#%EB%A7%88%EC%A7%80%EB%A7%89-github-pages%EC%97%90-%EB%B9%8C%EB%93%9C-%EA%B2%B0%EA%B3%BC%EB%AC%BC-%EC%97%85%EB%A1%9C%EB%93%9C\" aria-label=\"마지막 github pages에 빌드 결과물 업로드 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>마지막! GitHub Pages에 빌드 결과물 업로드</h3>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ <span class=\"token function\">npm</span> run deploy</code></pre></div>\n<p>hompage에 입력했던 주소로 접속하시면 프로젝트가 배포된 것을 볼 수 있을 겁니다.</p>\n<hr>\n<h4 id=\"reference\" style=\"position:relative;\"><a href=\"#reference\" aria-label=\"reference permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Reference</h4>\n<p><a href=\"https://lktprogrammer.tistory.com/5\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://lktprogrammer.tistory.com/5</a></p>","excerpt":"GitHub Pages GitHub Pages는 GitHub Repository를 이용해 웹 사이트를 무료로 호스팅해주는 서비스입니다. 사용자가 GitHub Repository에 자신의 웹 프로젝트 빌드 결과물을 업로드 하면 GitHub가 그 결과물…","tableOfContents":"<ul>\n<li>\n<p><a href=\"/github-deploy.md/#github-pages\">GitHub Pages</a></p>\n<ul>\n<li><a href=\"/github-deploy.md/#1-%EB%A1%9C%EC%BB%AC-%EC%A0%80%EC%9E%A5%EC%86%8C%EC%97%90-commit-%ED%95%98%EA%B8%B0\">1. 로컬 저장소에 Commit 하기</a></li>\n<li><a href=\"/github-deploy.md/#2-gihub%EC%97%90-repository-%EC%83%9D%EC%84%B1-%EC%9B%90%EA%B2%A9-%EC%A0%80%EC%9E%A5%EC%86%8C-%EC%83%9D%EC%84%B1\">2. GiHub에 Repository 생성 (원격 저장소 생성)</a></li>\n<li><a href=\"/github-deploy.md/#3-%EB%A1%9C%EC%BB%AC-%EC%A0%80%EC%9E%A5%EC%86%8C%EC%99%80-%EC%9B%90%EA%B2%A9-%EC%A0%80%EC%9E%A5%EC%86%8C-%EC%97%B0%EA%B2%B0\">3. 로컬 저장소와 원격 저장소 연결</a></li>\n<li><a href=\"/github-deploy.md/#4-gh-pages-%ED%8C%A8%ED%82%A4%EC%A7%80-%EC%84%A4%EC%B9%98\">4. gh-pages 패키지 설치</a></li>\n<li><a href=\"/github-deploy.md/#5-packagejson-%EC%88%98%EC%A0%95\">5. package.json 수정</a></li>\n<li><a href=\"/github-deploy.md/#%EB%A7%88%EC%A7%80%EB%A7%89-github-pages%EC%97%90-%EB%B9%8C%EB%93%9C-%EA%B2%B0%EA%B3%BC%EB%AC%BC-%EC%97%85%EB%A1%9C%EB%93%9C\">마지막! GitHub Pages에 빌드 결과물 업로드</a></li>\n</ul>\n</li>\n</ul>","fields":{"slug":"/github-deploy.md/"},"frontmatter":{"title":"GitHub Pages로 React 배포(Deploy)하기","date":"Apr 24, 2019","tags":["Github","React"],"keywords":["github","react","deploy"],"update":"Jan 01, 0001"}}},"pageContext":{"slug":"/github-deploy.md/","series":[],"lastmod":"2019-04-24"}},"staticQueryHashes":["2027115977","694178885"]}